package com.yidu.t299.dao.lzy;

import com.yidu.t299.domain.lzy.SourceSetting;
import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper
public interface SourcesettingMapper {

    /**
     * 根据计划编号删除该市场计划信息
     * @param sourceId
     * @return 影响的行数(返回1则为成功)
     */
    @Delete({
            "delete from source_setting" +
                    " where source_id = #{sourceId,jdbcType=INTEGER}"
    })
    int deleteByPrimaryKey(Integer sourceId);

    /**
     * 添加校区信息
     * @param record 校区对象
     * @return 影响的行数(返回1则为成功)
     */
    @Insert({
            "insert into source_setting (source_id, source_name)" +
                    "values (#{sourceId,jdbcType=INTEGER},#{sourceName,jdbcType=VARCHAR})"
    })
    int insert(SourceSetting record);

    /**
     * 根据校区编号查询指定的信息
     * @param sourceId 校区编号
     * @return 校区对象
     */
    @Select({
            "select" +
                    " source_id, source_name",
            " from source_setting" +
                    " where source_id = #{sourceId,jdbcType=INTEGER}"
    })
    @Results(id = "sourcesettingMap",value = {
            @Result(id = true,column = "source_id",property = "sourceId"),
            @Result(column = "source_name",property = "sourceName"),
    })
    SourceSetting selectByPrimaryKey(Integer sourceId);

    /**
     * 按条件分页查询校区数据集合
     * @param rows 每页的行数
     * @param page 页码
     * @param condition 条件参数
     * @return 校区对象集合
     */
    @Select("select * from source_setting where 1=1 ${condition} limit #{page},#{rows}")
    @ResultMap("sourcesettingMap")
    List<SourceSetting> selectByPage(@Param("rows") int rows, @Param("page") int page, @Param("condition") String condition);

    /**
     * 按条件查询school表中数据行数
     * @param condition 条件参数
     * @return 数据行数
     */
    @Select("select count(*) from source_setting where 1=1 ${condition}")
    int selectCount(@Param("condition") String condition);

    /**
     * 根据校区信息修改其数据
     * @param record 校区对象
     * @return 影响的行数(返回1则为成功)
     */
    @Update({
            "update source_setting",
            " set source_name = #{sourceName,jdbcType=VARCHAR}",
            " where source_id = #{sourceId,jdbcType=INTEGER}"
    })
    int updateByPrimaryKey(SourceSetting record);

}
